#include <iostream>
#include "directory.h"
//c/c++ 中运行无初值的对象，是否确保对象初始化的规则很杂乱
//c++的c部分。如果初始化可能会导致运行时成本，则不能保证会发生
//c++的非c部分，情况有时不同
//数组不一定能保证其内容的初始化，而vector内容必须要进行初始化

//所以手动的初始化才能避免

//c++的初始化责任都落在了构造函数上。


//初始化和赋值并不是一个意思
using namespace std;
extern FileSystem tfs;


//内置类型
//对于内置类型的非成员对象，需要手动完成初始化。



int main()
{
    Directory tempDir; //不再依赖，因为函数里的instance会去自动检查

    // Directory tempDir(tfs); tfs 不确定是否已经初始化了
    int x = 0; // 手动初始化int类型
    const char * text = "A C-style string"; // 指针的手动初始化
    double d; // 通过读取输入流来“初始化”
    std::cin >> d;
    return 0;
}
